Temporal promotion of content to a project activity

ABSTRACT

A request from a user to promote an item of collaborative content from a first application associated with a collaborative social interaction system to a project activity within a project management system application is detected. The item of collaborative content is transcoded to the project activity within the project management system application. Users within a collaborative environment are allowed to collaboratively advance the project activity within the project management system application. The collaboratively-advanced project activity is reverted back to an updated item of collaborative content within the first application associated with the collaborative social interaction system.

BACKGROUND

The present invention relates to content promotion between applications.More particularly, the present invention relates to temporal promotionof content to a project activity.

Users of computing devices may communicate and share ideas using socialmedia technology. Social media technology also provides an onlineenvironment where people may collaborate to publish content andinformation. Examples of the published content and information mayinclude wiki pages, blog posts, files, documents, and other forms ofcollaboratively published content.

BRIEF SUMMARY

A method includes detecting, via a processor, a request from a user topromote an item of collaborative content from a first applicationassociated with a collaborative social interaction system to a projectactivity within a project management system application; transcoding theitem of collaborative content to the project activity within the projectmanagement system application; allowing users within a collaborativeenvironment to collaboratively advance the project activity within theproject management system application; and reverting thecollaboratively-advanced project activity back to an updated item ofcollaborative content within the first application associated with thecollaborative social interaction system.

A system includes a memory and a processor programmed to: detect arequest from a user to promote an item of collaborative content withinthe memory from a first application associated with a collaborativesocial interaction system to a project activity within a projectmanagement system application; transcode the item of collaborativecontent to the project activity within the project management systemapplication; allow users within a collaborative environment tocollaboratively advance the project activity within the projectmanagement system application; and revert the collaboratively-advancedproject activity back to an updated item of collaborative content withinthe memory within the first application associated with thecollaborative social interaction system.

A computer program product includes a computer readable storage mediumhaving computer readable program code embodied therewith, where thecomputer readable program code when executed on a computer causes thecomputer to: detect a request from a user to promote an item ofcollaborative content from a first application associated with acollaborative social interaction system to a project activity within aproject management system application; transcode the item ofcollaborative content to the project activity within the projectmanagement system application; allow users within a collaborativeenvironment to collaboratively advance the project activity within theproject management system application; and revert thecollaboratively-advanced project activity back to an updated item ofcollaborative content within the first application associated with thecollaborative social interaction system.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a block diagram of an example of an implementation of a systemfor temporal promotion of content to a project activity according to anembodiment of the present subject matter;

FIG. 2 is a block diagram of an example of an implementation of a coreprocessing module capable of performing temporal promotion of content toa project activity according to an embodiment of the present subjectmatter;

FIG. 3 is a flow chart of an example of an implementation of a processfor temporal promotion of content to a project activity according to anembodiment of the present subject matter; and

FIG. 4 is a flow chart of an example of an implementation of a processfor temporal promotion of content to a project activity according to anembodiment of the present subject matter.

DETAILED DESCRIPTION

The examples set forth below represent the necessary information toenable those skilled in the art to practice the invention and illustratethe best mode of practicing the invention. Upon reading the followingdescription in light of the accompanying drawing figures, those skilledin the art will understand the concepts of the invention and willrecognize applications of these concepts not particularly addressedherein. It should be understood that these concepts and applicationsfall within the scope of the disclosure and the accompanying claims.

The subject matter described herein provides temporal promotion ofcontent to a project activity. The promoted content may be, for example,collaborative content that is promoted (e.g., converted/transcoded) fromcollaborative content created within a collaborative social interactionsystem into an activity, such as a project activity within a separateand distinct project management system. The collaborative content mayinclude content such as topics, items of content, wiki pages, blogposts, files, documents, and other forms of collaboratively publishedcontent. The activity may further be transcoded to include one or moreconfigured tasks and/or sub-tasks that may be assigned to developers.The transcoded project activity may include a configured duration. Thetasks and any sub-tasks may be tracked and/or managed against theconfigured duration within the project management system in associationwith a project or product development/maintenance cycle. The users maythen collaboratively perform the assigned tasks and any sub-tasksassociated with the project activity within the project managementsystem. Notifications may be generated to remind the users to completetheir respective tasks as the expiration of the configured duration ofthe project activity approaches. The “owner” of the original content mayadjust the configured duration if and as appropriate. At expiration ofthe configured duration, the project activity may beconverted/transcoded back into the collaborative contentsystem/environment to update and synchronize the original collaborativecontent to incorporate/document the collaborative activities performedwithin the project management system.

As such, the present technology facilitates and manages synchronizationof two disparate systems for collaborative content development andproject management, respectively. Users may collaborate within each ofthe two systems independently to further enhance collaborative projectdevelopment and/or maintenance. When a change is made in one system, theother system may be automatically updated to maintain synchronizationbetween the separate collaborative content and project activities.Accordingly, the present technology provides a cross-platformintegration of technologies that may be utilized to improve both usercollaboration and project/task management. By use of the presenttechnology, social user communities, such as project development teams,may collaboratively and flexibly create a topic or item of contentwithin a collaborative social interaction system, such as a social mediaor social networking platform/system, to refine development goals andresponsibilities. All or a portion of the collaborative content thatrepresents the development goals and responsibilities may be transcodedinto one or more assigned tasks/sub-tasks within the project managementsystem to help the responsible individuals carry out the respectiveassigned goals and responsibilities. The resulting activity status maybe transcoded back into the collaborative social interaction system atany time to allow further collaboration, reporting, and other functions.

An example of where the present technology may be applied includes useof the present technology by a project development team. A user that isa member of the project development team may be working on a new releaseof a product and may be trying to find business rules and use casesrelated to implementation of a new method and/or new functionality. Thepresent technology allows the owner of a community to temporarily (e.g.,for a time period) promote content to another media format (e.g., anactivity associated with a project in a project management system) forcollaboration or use. The present technology promotes a piece of contentto another format/system that allows the user to more easily interactwith and use the content or tools. Once the content is no longer beingprocessed in the other format/system, the activity may be returned tothe source as updated content and may be archived for use at a latertime. The conversion or transcoding may be repeated as appropriate for agiven implementation or situation to provide a fluid bi-directionalintegration of technologies that may improve both user collaboration andproject/task management. Further, to support modifications todevelopment schedules, a configured time period or duration of contentpromotion to one or more activities may be modified by the owner of thecommunity and/or activity, as appropriate for the given implementation,to accommodate schedule changes.

As another example implementation within a user interface of acollaborative social interaction system, a group of users/participantsmay have a collaborative social interaction community established torepresent an upcoming release of the product they are working ontogether. Within this collaborative social interaction community, auser/participant may have created several items of content thatrepresent different phases in the project development life cycle. Theowner of the collaborative social interaction community may want totrack these several items of content as subtasks for a development cyclefor the upcoming release.

The present subject matter allows the owner to “right click” with amouse or other pointing device on the development item of content withina user interface of the collaborative social interaction community and apop-up menu with options related to the item of content may be presentedto the user. One option may be titled “Promote Content to an Activity.”By selecting this option, the owner may be presented with an activitypromotion dialog box and may input information about the activity, suchas activity promotion parameters, to be created from the developmentitem of content.

An activity promotion parameter the owner may input may be, for example,an end date or duration of the activity. Other activity promotionparameters are possible and all such parameters are considered to bewithin the scope of the present technology. The activity promotiondialog box may also present a “Promote” button to the owner to causeinput of the various activity promotion parameters for generation of anactivity within a separate project management system (e.g., distinctfrom the collaborative social interaction system/community).

Once the owner clicks the “Promote” button, the original piece ofcontent in the collaborative social interaction community may be lockedto prevent modifications during the promoted activity time period, andthe activity may be created for the development phase within theseparate project management system. Members of the development team andthe owner of the collaborative social interaction community may now usethe activity created within the project management system to track andmonitor sub-tasks related to the development phase of the new release ofthe product.

When the end date of the promoted activity time period approaches, suchas one (1) week or other time period prior to expiration of the promotedactivity time period, the present technology may notify members of theactivity within the project management system that the activity isending soon and to finalize their activity updates before the activityends. Once the activity ends within the project management system, theactivity becomes locked within the project management system and thecontent in the activity is moved back to the original source in thecollaborative social interaction community. At this time, the temporaryactivity that was created within the project management system may beremoved and deleted from the project management system.

As such, the present technology temporally promotes community content toproject activities, and updates the community content in response toexpiration of the promoted activity time period. The present technologyalso manages removal of the activity from the project developmentsystem.

It should be noted that, as an option, the owner of the activity withinthe project management system may also provide members of thecollaborative social interaction community with write access to theoriginal content in the collaborative social interaction community.However, if these authorized members do not update the original content,the content may remain locked. Resynchronization of the original contentwith any changes may be performed when the temporal activity iscompleted, such that the synchronization occurs at the completion of thetemporal activity rather than during the time period of the temporalactivity.

Accordingly, by use of the subject matter described herein, a businessand/or development team may track deliverables and progress of multiplesub-tasks in a more visible and straight forward manner. This improvedvisibility of collaborative interactions may benefit the developerthrough improved efficiency and may benefit management by improvingproject management and deliverable tracking. For the developer workingon adding functionality to a project/product, the developer's managementmay determine detailed status of a particular task that was createdwithin a collaborative content development system by reviewing a currentstatus of the ongoing project activities of the project that was createdwithin the project management system from the collaborative content.From the management perspective, management may plan more effectively byknowing how far each developer has progressed in terms of completion oftheir respective set of subtasks for their unit of work.

It should be noted that conception of the present subject matterresulted from recognition of certain limitations associated withconventional collaborative content technology (e.g., social mediaenvironments and systems). For example, it was observed that product orother project development teams may create collaborative content withina collaborative content system (e.g., wikis, blog posts, files,documents, and other forms of collaboratively published content) relatedto a product or project that is being managed. It was determined that,in view of this observation, project development efficiency may beimproved by programmatically converting/promoting thatcollaboratively-created content to a project activity within a projectmanagement system so that the project activity may be managed as part ofproject management operations. However, it was determined thatfunctionality does not exist within conventional collaborative contenttechnology to promote collaboratively-created content to a projectactivity within a separate project management system. It was furtherdetermined that functionality does not exist within conventional projectmanagement technology to convert project activities back tocollaborative content when a project activity is completed. The presentsubject matter improves collaborative interaction and project managementby providing for temporal promotion of content to a project activity, asdescribed above and in more detail below. As such, improved projectoperations, such as product development, product management, and relatedactivities, may be obtained through use of the present technology.

The temporal promotion of content to a project activity described hereinmay be performed in real time to allow prompt promotion of collaborativecontent from a collaborative content system to project activities withina project management system, and to allow prompt conversion of projectactivities within the project management system back to collaborativecontent collaborative content system. For purposes of the presentdescription, real time shall include any time frame of sufficientlyshort duration as to provide reasonable response time for informationprocessing acceptable to a user of the subject matter described.Additionally, the term “real time” shall include what is commonly termed“near real time”-generally meaning any time frame of sufficiently shortduration as to provide reasonable response time for on-demandinformation processing acceptable to a user of the subject matterdescribed (e.g., within a portion of a second or within a few seconds).These terms, while difficult to precisely define are well understood bythose skilled in the art.

FIG. 1 is a block diagram of an example of an implementation of a system100 for temporal promotion of content to a project activity. A computingdevice_1 102 through a computing device_N 104 communicate via a network106 with several other devices. The other devices include a server_1 108through a server_M 110, and a database 112.

As will be described in more detail below in association with FIG. 2through FIG. 4, the computing device_1 102 through the computingdevice_N 104 and the server_1 108 through the server_M 110 may eachprovide temporal promotion of content to a project activity. Thetemporal promotion of content to a project activity is based uponcontent selections within collaborative social interaction communitiesand promotion of that content to traceable activities within one or moreseparate project management systems. As such, the present technology maybe implemented at a user computing device or server device level. Avariety of possibilities exist for implementation of the present subjectmatter, and all such possibilities are considered within the scope ofthe present subject matter.

It should be noted that any of the respective computing devicesdescribed in association with FIG. 1 may be portable computing devices,either by a user's ability to move the respective computing devices todifferent locations, or by the respective computing device's associationwith a portable platform, such as a plane, train, automobile, or othermoving vehicle. It should also be noted that the respective computingdevices may be any computing devices capable of processing informationas described above and in more detail below. For example, the respectivecomputing devices may include devices such as a personal computer (e.g.,desktop, laptop, etc.) or a handheld device (e.g., cellular telephone,personal digital assistant (PDA), email device, music recording orplayback device, tablet computing device, e-book reading device, etc.),a web server, application server, or other data server device, or anyother device capable of processing information as described above and inmore detail below.

The network 106 may include any form of interconnection suitable for theintended purpose, including a private or public network such as anintranet or the Internet, respectively, direct inter-moduleinterconnection, dial-up, wireless, or any other interconnectionmechanism capable of interconnecting the respective devices.

The server_1 108 through the server_M 110 may include any device capableof providing data for consumption by a device, such as the computingdevice_1 102 through the computing device_N 104, via a network, such asthe network 106. As such, the server_1 108 through the server_M 110 mayeach include a web server, application server, or other data serverdevice.

The database 112 may include a relational database, an object database,or any other storage type of device. As such, the database 112 may beimplemented as appropriate for a given implementation. The database 112may be utilized to store archived, retrieved, and collaborative socialinteraction system/community information, as well as transcoded projectactivities that have been promoted by a community owner for trackingwithin a project management system.

FIG. 2 is a block diagram of an example of an implementation of a coreprocessing module 200 capable of performing temporal promotion ofcontent to a project activity. The core processing module 200 may beassociated with either the computing device_1 102 through the computingdevice_N 104 or with the server_1 108 through the server_M 110, asappropriate for a given implementation. As such, the core processingmodule 200 is described generally herein, though it is understood thatmany variations on implementation of the components within the coreprocessing module 200 are possible and all such variations are withinthe scope of the present subject matter.

Further, the core processing module 200 may provide different andcomplementary processing of temporal promotion of content to a projectactivity in association with each implementation. As such, for any ofthe examples below, it is understood that any aspect of functionalitydescribed with respect to any one device that is described inconjunction with another device (e.g., sends/sending, etc.) is to beunderstood to concurrently describe the functionality of the otherrespective device (e.g., receives/receiving, etc.).

A central processing unit (CPU) 202 provides computer instructionexecution, computation, and other capabilities within the coreprocessing module 200. A display 204 provides visual information to auser of the core processing module 200 and an input device 206 providesinput capabilities for the user.

The display 204 may include any display device, such as a cathode raytube (CRT), liquid crystal display (LCD), light emitting diode (LED),electronic ink displays, projection, touchscreen, or other displayelement or panel. The input device 206 may include a computer keyboard,a keypad, a mouse, a pen, a joystick, touchscreen, or any other type ofinput device by which the user may interact with and respond toinformation on the display 204.

It should be noted that the display 204 and the input device 206 may beoptional components for the core processing module 200 for certainimplementations/devices. Accordingly, the core processing module 200 mayoperate as a completely automated embedded device without direct userconfigurability or feedback. However, the core processing module 200 mayalso provide user feedback and configurability via the display 204 andthe input device 206, respectively, as appropriate for a givenimplementation.

A communication module 208 provides interconnection capabilities thatallow the core processing module 200 to communicate with other moduleswithin the system 100. The communication module 208 may include anyelectrical, protocol, and protocol conversion capabilities useable toprovide interconnection capabilities, appropriate for a givenimplementation.

A memory 210 includes an application area 212 that provides storage andexecution space for one or more community interaction applications(e.g., web browsers), and one or more project management systemapplications. The memory 210 also includes a project management andtracking storage area 214 that stores information associated with one ormore projects that are being managed and tracked by the core processingmodule 200, such as calendars, tasks, developers/resources assigned totasks, and other related project information.

As will be described in more detail below, information stored within theproject management and tracking storage area 214 may be used to evaluatecontent from collaborative social interaction systems/communities thathas been promoted to one or more project activities within a projectmanagement system/application. As such, developers and managers mayutilize the core processing module 200 in association with therespective devices of the system 100 to perform the respective projectactivities and manage their respective scheduling obligations using theinformation stored within the project management and tracking storagearea 214.

It is understood that the memory 210 may include any combination ofvolatile and non-volatile memory suitable for the intended purpose,distributed or localized as appropriate, and may include other memorysegments not illustrated within the present example for ease ofillustration purposes. For example, the memory 210 may include a codestorage area, an operating system storage area, a code execution area,and a data area without departure from the scope of the present subjectmatter.

A content and activity transcoding module 216 is also illustrated. Thecontent and activity transcoding module 216 provides forward transcodingof collaborative social interaction community content to projectactivities, and provides inverse transcoding of project activities tocollaborative social interaction community content for the coreprocessing module 200, as described above and in more detail below. Thecontent and activity transcoding module 216 may also implement therespective web interface-based application and project management systeminterfaces, as appropriate for the given implementation. The content andactivity transcoding module 216 may also interface with both thecollaborative social interaction community system and the projectmanagement system to manage temporal promotion of the community contentto the project activities, including developer reminders and otheractivities. The content and activity transcoding module 216 may alsointerface with both the collaborative social interaction communitysystem and the project management system to manage reversion of theproject activities back to the collaborative social interactioncommunity content in response to expiration of the time period(s)designated for promotion of the content to the respective projectactivities. The content and activity transcoding module 216 implementsthe automated temporal promotion of content to a project activity of thecore processing module 200.

It should also be noted that the content and activity transcoding module216 may form a portion of other circuitry described without departurefrom the scope of the present subject matter. Further, the content andactivity transcoding module 216 may alternatively be implemented as anapplication stored within the memory 210. In such an implementation, thecontent and activity transcoding module 216 may include instructionsexecuted by the CPU 202 for performing the functionality describedherein. The CPU 202 may execute these instructions to provide theprocessing capabilities described above and in more detail below for thecore processing module 200. The content and activity transcoding module216 may form a portion of an interrupt service routine (ISR), a portionof an operating system, a portion of a browser application, or a portionof a separate application without departure from the scope of thepresent subject matter.

A timer/clock module 218 is illustrated and used to determine timing anddate information, such as temporal information associated with projectactivity promotion of collaborative social interaction communitycontent, as described above and in more detail below. As such, thecontent and activity transcoding module 216 utilizes information derivedfrom the timer/clock module 218 for information processing activities,such as the temporal promotion of content to a project activity.

The database 112 is again shown within FIG. 2 associated with the coreprocessing module 200. As such, the database 112 may be operativelycoupled to the core processing module 200 without use of networkconnectivity, as appropriate for a given implementation.

The CPU 202, the display 204, the input device 206, the communicationmodule 208, the memory 210, the content and activity transcoding module216, the timer/clock module 218, and the database 112 are interconnectedvia an interconnection 220. The interconnection 220 may include a systembus, a network, or any other interconnection capable of providing therespective components with suitable interconnection for the respectivepurpose.

Though the different modules illustrated within FIG. 2 are illustratedas component-level modules for ease of illustration and descriptionpurposes, it should be noted that these modules may include anyhardware, programmed processor(s), and memory used to carry out thefunctions of the respective modules as described above and in moredetail below. For example, the modules may include additional controllercircuitry in the form of application specific integrated circuits(ASICs), processors, antennas, and/or discrete integrated circuits andcomponents for performing communication and electrical controlactivities associated with the respective modules. Additionally, themodules may include interrupt-level, stack-level, and application-levelmodules as appropriate. Furthermore, the modules may include any memorycomponents used for storage, execution, and data processing forperforming processing activities associated with the respective modules.The modules may also form a portion of other circuitry described or maybe combined without departure from the scope of the present subjectmatter.

Additionally, while the core processing module 200 is illustrated withand has certain components described, other modules and components maybe associated with the core processing module 200 without departure fromthe scope of the present subject matter. Additionally, it should benoted that, while the core processing module 200 is described as asingle device for ease of illustration purposes, the components withinthe core processing module 200 may be co-located or distributed andinterconnected via a network without departure from the scope of thepresent subject matter. For a distributed arrangement, the display 204and the input device 206 may be located at a point of sale device,kiosk, or other location, while the CPU 202 and memory 210 may belocated at a local or remote server. Many other possible arrangementsfor components of the core processing module 200 are possible and allare considered within the scope of the present subject matter. It shouldalso be understood that, though the database 112 is illustrated as aseparate component for purposes of example, the information storedwithin the database 112 may also/alternatively be stored within thememory 210 without departure from the scope of the present subjectmatter. Accordingly, the core processing module 200 may take many formsand may be associated with many platforms.

FIG. 3 through FIG. 4 described below represent example processes thatmay be executed by devices, such as the core processing module 200, toperform the automated temporal promotion of content to a projectactivity associated with the present subject matter. Many othervariations on the example processes are possible and all are consideredwithin the scope of the present subject matter. The example processesmay be performed by modules, such as the content and activitytranscoding module 216 and/or executed by the CPU 202, associated withsuch devices. It should be noted that time out procedures and othererror control procedures are not illustrated within the exampleprocesses described below for ease of illustration purposes. However, itis understood that all such procedures are considered to be within thescope of the present subject matter. Further, the described processesmay be combined, sequences of the processing described may be changed,and additional processing may be added or removed without departure fromthe scope of the present subject matter.

FIG. 3 is a flow chart of an example of an implementation of a process300 for temporal promotion of content to a project activity. At block302, the process 300 detects, via a processor, a request from a user topromote an item of collaborative content from a first applicationassociated with a collaborative social interaction system to a projectactivity within a project management system application. At block 304,the process 300 transcodes the item of collaborative content to theproject activity within the project management system application. Atblock 306, the process 300 allows users within a collaborativeenvironment to collaboratively advance the project activity within theproject management system application. At block 308, the process 300reverts the collaboratively-advanced project activity back to an updateditem of collaborative content within the first application associatedwith the collaborative social interaction system.

FIG. 4 is a flow chart of an example of an implementation of a process400 for temporal promotion of content to a project activity. At decisionpoint 402, the process 400 makes a determination as to whether a requestfrom a user to promote an item of collaborative content from a firstapplication associated with a collaborative social interaction system toa project activity within a second application of a project managementsystem has been detected. Detecting the request from the user to promotethe item of collaborative content may include, for example, detecting a“right click” of a mouse input device over a portion of collaborativecontent displayed within a user interface of the first applicationassociated with the collaborative social interaction system, which mayresult in the display of a pop-up menu associated with contentpromotion, followed by the detection of a selection of a menu pop-upmenu option that indicates the request to promote the item ofcollaborative content to the project activity. The menu option may be,for example, a pop-up menu option such as a “Promote Content to anActivity” pop-up menu option.

In response to determining that a request to promote the item ofcollaborative content from a first application associated with acollaborative social interaction system to a project activity within asecond application of a project management system has been detected, theprocess 400 locks the item of collaborative content within thecollaborative content system at block 404. The item of content mayremain locked to prevent user modification during the project activity.

At block 406, the process 400 determines a promotional time period orduration for promotion of the collaborative content to the projectactivity. Determining the promotional time period or duration forpromotion of the collaborative content to the project activity mayinclude prompting the user to specify the respective time period orduration. Alternatively, the pop-up menuing system may be configured topresent promotion options (e.g., one week, a configured number of days,one month, etc.), and the detected request to promote the item ofcontent may include the designated time period or duration. A remindertime may also be determined and/or specified as described above, thatmay be usable to remind developers when the project activity is nearingits specified end. The reminder time may be, for example, one day beforeexpiration of the time period, one week before expiration of the timeperiod, or other time/interval relative to the end of the projectactivity as appropriate for a given implementation.

At block 408, the process 400 determines one or more specified projectmanagement system users that are assigned to the project activity. Asdescribed above, the project activity may include one or more tasks,each with one or more sub-tasks, as appropriate for a givenimplementation. As such, the determination of one or more specifiedproject management system users that are assigned to the projectactivity may include assignment of individuals to each task/sub-task,again as appropriate for a given implementation.

At block 410, the process 400 transcodes the item of collaborativecontent to the project activity within the project management system,including any appropriate tasks and/or sub-tasks as described above. Atblock 412, the process 400 configures the project activity with aduration specified by the promotional time period or duration, with thereminder time, and sets a timer, such as a timer associated with thetimer/clock module 218. At block 414, the process 400 notifies theassigned project management system user(s) of the promoted projectactivity and the configured duration of the project activity.

The process 400 then begins an iterative cycle of several determinationsassociated with the promoted project activity. At decision point 416,the process 400 makes a determination as to whether the configuredreminder time has arrived. In response to determining that theconfigured reminder time has not arrived, the process 400 makes adetermination at decision point 418 as to whether a request to modifythe configured duration of the project activity has been detected. Asdescribed above, an owner of the content within the collaborative socialinteraction system, or another individual with appropriateauthorization, may be allowed to change/modify the configured duration.In response to determining that a request to modify the configuredduration of the project activity has not been detected, the process 400makes a determination at decision point 420 as to whether the configuredduration of the project activity has expired (e.g., that the configuredend time has arrived). In response to determining that the duration ofthe project activity has not expired, the process 400 returns todecision point 416 and iterates as described above.

Returning to the description of decision point 416, in response todetermining that the configured reminder time has arrived, the process400 notifies the assigned project management system user(s) of theconfigured approaching project activity end time. As such, in responseto determining that the configured reminder time has arrived, theprocess 400 notifies members of the project activity of the end date ofthe project activity at block 422 so that they can finalize theirproject activity content updates before the project activity ends. Theprocess 400 returns to decision point 418 and iterates as describedabove.

Returning to the description of decision point 418, in response todetermining that a request to modify the configured duration of theproject activity has been detected, the process 400 adjusts theconfigured duration of the project activity and the configured remindertime at block 424. The process 400 returns to decision point 420 anditerates as described above.

Returning to the description of decision point 420, in response todetermining that the configured duration of the project activity hasexpired, the process 400 begins processing to revert thecollaboratively-advanced project activity back to an updated item ofcollaborative content within the first application associated with thecollaborative social interaction system. At block 426, the process 400programmatically archives the promoted project activity as an updateditem of collaborative content within the first application associatedwith the collaborative social interaction system. At block 428, theprocess 400 unlocks the updated item of collaborative content within thecollaborative social interaction system. At block 430, the process 400removes the project activity from the project management systemapplication in response to reverting the collaboratively-advancedproject activity back to the updated item of collaborative contentwithin the first application associated with the collaborative socialinteraction system. The process 400 returns to decision point 402 anditerates as described above. It should be noted that the process 400 maybe re-entrant, in that a content owner may issue a new request tore-promote the updated item of collaborative content to a new projectactivity, and such a request may re-invoke the process 400 to re-promotethe updated item of collaborative content to the new project activity.

As such, the process 400 transcodes one or more items of collaborativecontent within a collaborative social interaction system to promote thecontent to a project activity within a project management systemapplication. The process 400 allows users within the collaborativeenvironment to collaboratively advance the project activity within theproject management system application to advance the collaborationinitiated within the first application associated with the collaborativesocial interaction system. The process 400 reverts thecollaboratively-advanced project activity back to an updated item ofcollaborative content usable in association with the first applicationassociated with the collaborative social interaction system.

As described above in association with FIG. 1 through FIG. 4, theexample systems and processes provide temporal promotion of content to aproject activity. Many other variations and additional activitiesassociated with temporal promotion of content to a project activity arepossible and all are considered within the scope of the present subjectmatter.

Those skilled in the art will recognize, upon consideration of the aboveteachings, that certain of the above examples are based upon use of aprogrammed processor, such as the CPU 202. However, the invention is notlimited to such example embodiments, since other embodiments could beimplemented using hardware component equivalents such as special purposehardware and/or dedicated processors. Similarly, general purposecomputers, microprocessor based computers, micro-controllers, opticalcomputers, analog computers, dedicated processors, application specificcircuits and/or dedicated hard wired logic may be used to constructalternative equivalent embodiments.

As will be appreciated by one skilled in the art, aspects of the presentinvention may be embodied as a system, method or computer programproduct. Accordingly, aspects of the present invention may take the formof an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module” or “system.”Furthermore, aspects of the present invention may take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

Any combination of one or more computer readable medium(s) may beutilized. The computer readable medium may be a computer readable signalmedium or a computer readable storage medium. A computer readablestorage medium may be, for example, but not limited to, an electronic,magnetic, optical, electromagnetic, infrared, or semiconductor system,apparatus, or device, or any suitable combination of the foregoing. Morespecific examples (a non-exhaustive list) of the computer readablestorage medium would include the following: an electrical connectionhaving one or more wires, a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), a portablecompact disc read-only memory (CD-ROM), an optical storage device, amagnetic storage device, or any suitable combination of the foregoing.In the context of this document, a computer readable storage medium maybe any tangible medium that can contain, or store a program for use byor in connection with an instruction execution system, apparatus, ordevice.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing.

Computer program code for carrying out operations for aspects of thepresent invention may be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as JAVA™, Smalltalk, C++ or the like and conventional proceduralprogramming languages, such as the “C” programming language or similarprogramming languages. The program code may execute entirely on theuser's computer, partly on the user's computer, as a stand-alonesoftware package, partly on the user's computer and partly on a remotecomputer or entirely on the remote computer or server. In the latterscenario, the remote computer may be connected to the user's computerthrough any type of network, including a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

Aspects of the present invention have been described with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

These computer program instructions may also be stored in acomputer-readable storage medium that can direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablestorage medium produce an article of manufacture including instructionswhich implement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the figures. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

A data processing system suitable for storing and/or executing programcode will include at least one processor coupled directly or indirectlyto memory elements through a system bus. The memory elements can includelocal memory employed during actual execution of the program code, bulkstorage, and cache memories which provide temporary storage of at leastsome program code in order to reduce the number of times code must beretrieved from bulk storage during execution.

Input/output or I/O devices (including but not limited to keyboards,displays, pointing devices, etc.) can be coupled to the system eitherdirectly or through intervening I/O controllers.

Network adapters may also be coupled to the system to enable the dataprocessing system to become coupled to other data processing systems orremote printers or storage devices through intervening private or publicnetworks. Modems, cable modems and Ethernet cards are just a few of thecurrently available types of network adapters.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the invention. Asused herein, the singular forms “a,” “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising,” when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed. Thedescription of the present invention has been presented for purposes ofillustration and description, but is not intended to be exhaustive orlimited to the invention in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the invention. Theembodiment was chosen and described in order to best explain theprinciples of the invention and the practical application, and to enableothers of ordinary skill in the art to understand the invention forvarious embodiments with various modifications as are suited to theparticular use contemplated.

What is claimed is:
 1. A method, comprising: detecting, via a processor,a request from a user to promote an item of collaborative content from afirst application associated with a collaborative social interactionsystem to a project activity within a project management systemapplication; transcoding the item of collaborative content to theproject activity within the project management system application;allowing users within a collaborative environment to collaborativelyadvance the project activity within the project management systemapplication; and reverting the collaboratively-advanced project activityback to an updated item of collaborative content within the firstapplication associated with the collaborative social interaction system.2. The method of claim 1, further comprising removing the projectactivity from the project management system application in response toreverting the collaboratively-advanced project activity back to theupdated item of collaborative content within the first applicationassociated with the collaborative social interaction system.
 3. Themethod of claim 1, further comprising programmatically archiving thecollaboratively-advanced project activity to the updated item ofcollaborative content within the first application associated with thecollaborative social interaction system.
 4. The method of claim 1,further comprising: detecting an indication of a specified duration ofthe promotion of the item of collaborative content to the projectactivity; configuring a defined duration of the project activity withinthe project management system application based upon the specifiedduration of the promotion of the item of collaborative content to theproject activity; and notifying members of the project activity of anend date of the project activity and to finalize project activitycontent updates before the project activity ends in response todetermining that a configured reminder time has arrived.
 5. The methodof claim 1, further comprising: locking the item of collaborativecontent within the collaborative social interaction system during aduration of the project activity; and unlocking the updated item ofcollaborative content in response to reverting thecollaboratively-advanced project activity back to the updated item ofcollaborative content within the first application associated with thecollaborative social interaction system.
 6. The method of claim 1, wheredetecting, via the processor, the request from the user to promote theitem of collaborative content comprises: detecting a right click of amouse input device over a portion of collaborative content displayedwithin a user interface of the first application associated with thecollaborative social interaction system; displaying a pop-up menuassociated with content promotion; and detecting a user selection of apop-up menu option that indicates the request to promote the item ofcollaborative content to the project activity.
 7. The method of claim 1,further comprising: detecting a request to modify a configured durationof the project activity; and modifying an expiration time of the projectactivity and a reminder time of the project activity in response to thedetected request to modify the configured duration of the projectactivity.
 8. A system, comprising: a memory; and a processor programmedto: detect a request from a user to promote an item of collaborativecontent within the memory from a first application associated with acollaborative social interaction system to a project activity within aproject management system application; transcode the item ofcollaborative content to the project activity within the projectmanagement system application; allow users within a collaborativeenvironment to collaboratively advance the project activity within theproject management system application; and revert thecollaboratively-advanced project activity back to an updated item ofcollaborative content within the memory within the first applicationassociated with the collaborative social interaction system.
 9. Thesystem of claim 8, where the processor is further programmed to removethe project activity from the project management system application inresponse to reverting the collaboratively-advanced project activity backto the updated item of collaborative content within the memory withinthe first application associated with the collaborative socialinteraction system.
 10. The system of claim 8, where the processor isfurther programmed to archive the collaboratively-advanced projectactivity to the updated item of collaborative content within the memorywithin the first application associated with the collaborative socialinteraction system.
 11. The system of claim 8, where the processor isfurther programmed to: detect an indication of a specified duration ofthe promotion of the item of collaborative content to the projectactivity; configure a defined duration of the project activity withinthe project management system application based upon the specifiedduration of the promotion of the item of collaborative content to theproject activity; and notify members of the project activity of an enddate of the project activity and to finalize project activity contentupdates before the project activity ends in response to determining thata configured reminder time has arrived.
 12. The system of claim 8, wherethe processor is further programmed to: lock the item of collaborativecontent within the memory within the collaborative social interactionsystem during a duration of the project activity; and unlock the updateditem of collaborative content in response to reverting thecollaboratively-advanced project activity back to the updated item ofcollaborative content within the memory within the first applicationassociated with the collaborative social interaction system.
 13. Thesystem of claim 8, further comprising an input device, and where theprocessor is further programmed to: detect a request, via the inputdevice, to modify a configured duration of the project activity; andmodify an expiration time of the project activity and a reminder time ofthe project activity in response to the detected request, via the inputdevice, to modify the configured duration of the project activity.
 14. Acomputer program product, comprising: a computer readable storage mediumhaving computer readable program code embodied therewith, where thecomputer readable program code when executed on a computer causes thecomputer to: detect a request from a user to promote an item ofcollaborative content from a first application associated with acollaborative social interaction system to a project activity within aproject management system application; transcode the item ofcollaborative content to the project activity within the projectmanagement system application; allow users within a collaborativeenvironment to collaboratively advance the project activity within theproject management system application; and revert thecollaboratively-advanced project activity back to an updated item ofcollaborative content within the first application associated with thecollaborative social interaction system.
 15. The computer programproduct of claim 14, where the computer readable program code whenexecuted on the computer further causes the computer to remove theproject activity from the project management system application inresponse to reverting the collaboratively-advanced project activity backto the updated item of collaborative content within the firstapplication associated with the collaborative social interaction system.16. The computer program product of claim 14, where the computerreadable program code when executed on the computer further causes thecomputer to programmatically archive the collaboratively-advancedproject activity to the updated item of collaborative content within thefirst application associated with the collaborative social interactionsystem.
 17. The computer program product of claim 14, where the computerreadable program code when executed on the computer further causes thecomputer to: detect an indication of a specified duration of thepromotion of the item of collaborative content to the project activity;configure a defined duration of the project activity within the projectmanagement system application based upon the specified duration of thepromotion of the item of collaborative content to the project activity;and notify members of the project activity of an end date of the projectactivity and to finalize project activity content updates before theproject activity ends in response to determining that a configuredreminder time has arrived.
 18. The computer program product of claim 14,where the computer readable program code when executed on the computerfurther causes the computer to: lock the item of collaborative contentwithin the collaborative social interaction system during a duration ofthe project activity; and unlock the updated item of collaborativecontent in response to reverting the collaboratively-advanced projectactivity back to the updated item of collaborative content within thefirst application associated with the collaborative social interactionsystem.
 19. The computer program product of claim 14, where, in causingthe computer to detect the request from the user to promote the item ofcollaborative content, the computer readable program code when executedon the computer causes the computer to: detect a right click of a mouseinput device over a portion of collaborative content displayed within auser interface of the first application associated with thecollaborative social interaction system; display a pop-up menuassociated with content promotion; and detect a user selection of apop-up menu option that indicates the request to promote the item ofcollaborative content to the project activity.
 20. The computer programproduct of claim 14, where the computer readable program code whenexecuted on the computer further causes the computer to: detect arequest to modify a configured duration of the project activity; andmodify an expiration time of the project activity and a reminder time ofthe project activity in response to the detected request to modify theconfigured duration of the project activity.